@Sophia
2年前 提问
1个回答

c语言二进制数怎么表示

房乐
2年前

在c语言中二进制必须使用以0b或0B开头然后在后面写0或者1来表示,并且开头的标识不区分大小写,如果在c语言中没有加0b的开头然后使用二进制则默认按十进制显示,需要注意的是标准的C语言并不支持二进制写法,只是有些编译器自己进行了扩展,才支持二进制数字。换句话说,并不是所有的编译器都支持二进制数字,只有一部分编译器支持,并且跟编译器的版本有关系。

以下是以Visual C++6.0版本的编译器为例的c语言二进制举例:

    //合法的二进制
    int a = 0b101;  //换算成十进制为 5
    int b = -0b110010;  //换算成十进制为 -50
    int c = 0B100001;  //换算成十进制为 33

    //非法的二进制
    int m = 101010;  //无前缀 0B,相当于十进制
    int n = 0B410;  //4不是有效的二进制数字